{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Probability theory is a cornerstone for machine learning. We can think of quantum states as probability distributions with certain properties that make them different from our classical notion of probabilities. Contrasting these properties is an easy and straightforward introduction to the most basic concepts we need in quantum computing.\n",
    "\n",
    "Apart from probability theory, linear algebra is also critical for many learning protocols. As we will see, geometry and probabilities are intrinsically linked in quantum computing, but geometric notions are also familiar in dealing with classical probability distributions. This notebook first talks about classical probabilities and stochastic vectors, and introduces quantum states as a natural generalization.\n",
    "\n",
    "Throughout this course, we will assume finite probability distributions and finite dimensional spaces. This significantly simplifies notation and most quantum computers operate over finite dimensional spaces, so we do not lose much in generality.\n",
    "\n",
    "\n",
    "# Classical probability distributions\n",
    "\n",
    "Let us toss a biased coin. Without getting too technical, we can associate a random variable $X$ with the output: it takes the value 0 for heads and the value 1 for tails. We get heads with probability $P(X=0) = p_0$ and tails with $P(X=1) = p_1$ for each toss of the coin. In classical, Kolmogorovian probability theory, $p_i\\geq 0$ for all $i$, and the probabilities sum to one: $\\sum_i p_i = 1$. Let's sample this distribution"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-11-19T19:47:57.736024Z",
     "start_time": "2018-11-19T19:47:57.668891Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 1 0 0 0 0 0 0 1 0 1 1 1 1\n",
      " 0 0 0 1 0 1 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0 1 1 0 0 1 0 0 1 0\n",
      " 0 0 1 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1]\n"
     ]
    }
   ],
   "source": [
    "import numpy as np\n",
    "n_samples = 100\n",
    "p_1 = 0.2\n",
    "x_data = np.random.binomial(1, p_1, (n_samples,))\n",
    "print(x_data)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We naturally expect that the empirically observed frequencies also sum to one:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-11-19T19:47:57.747061Z",
     "start_time": "2018-11-19T19:47:57.741685Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1.0000000000000004\n"
     ]
    }
   ],
   "source": [
    "frequency_of_zeros, frequency_of_ones = 0, 0\n",
    "for x in x_data:\n",
    "    if x:\n",
    "        frequency_of_ones += 1/n_samples\n",
    "    else:\n",
    "        frequency_of_zeros += 1/n_samples\n",
    "print(frequency_of_ones+frequency_of_zeros)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Since $p_0$ and $p_1$ must be non-negative, all possible probability distributions are restricted to the positive orthant. The normalization constraint puts every possible distribution on a straight line. This plot describes all possible probability distributions by biased and unbiased coins."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-11-19T19:47:58.253755Z",
     "start_time": "2018-11-19T19:47:57.751818Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x7f7b82d49198>]"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "%matplotlib inline\n",
    "p_0 = np.linspace(0, 1, 100)\n",
    "p_1 = 1-p_0\n",
    "fig, ax = plt.subplots()\n",
    "ax.set_xlim(-1.2, 1.2)\n",
    "ax.set_ylim(-1.2, 1.2)\n",
    "ax.spines['left'].set_position('center')\n",
    "ax.spines['bottom'].set_position('center')\n",
    "ax.spines['right'].set_color('none')\n",
    "ax.spines['top'].set_color('none')\n",
    "ax.set_xlabel(\"$p_0$\")\n",
    "ax.xaxis.set_label_coords(1.0, 0.5)\n",
    "ax.set_ylabel(\"$p_1$\")\n",
    "ax.yaxis.set_label_coords(0.5, 1.0)\n",
    "plt.plot(p_0, p_1)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We may also arrange the probabilities in a vector $\\vec{p} = \\begin{bmatrix} p_0 \\\\ p_1 \\end{bmatrix}$. Here, for notational convenience, we put an arrow above the variable representing the vector, to distinguish it from scalars. You will see that quantum states also have a standard notation that provides convenience, but goes much further in usefulness than the humble arrow here.\n",
    "\n",
    "A vector representing a probability distribution is called a *stochastic vector*. The normalization constraint essentially says that the norm of the vector is restricted to one in the $l_1$ norm. In other words, $||\\vec{p}||_1 = \\sum_i |p_i| = 1$. This would be the unit circle in the $l_1$ norm, but since $p_i\\geq 0$, we are restricted to a quarter of the unit circle, just as we plotted above. We can easily verify this with numpy's norm function:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-11-19T19:47:58.267761Z",
     "start_time": "2018-11-19T19:47:58.257885Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "1.0"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "p = np.array([[0.8], [0.2]])\n",
    "np.linalg.norm(p, ord=1)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We know that the probability of heads is just the first element in the $\\vec{p}$, but since it is a vector, we could use linear algebra to extract it. Geometrically, it means that we project the vector to the first axis. This projection is described by the matrix $\\begin{bmatrix} 1 & 0\\\\0 & 0\\end{bmatrix}$. The length in the $l_1$ norm gives the sought probability:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-11-19T19:47:58.296678Z",
     "start_time": "2018-11-19T19:47:58.272116Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.8"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "Π_0 = np.array([[1, 0], [0, 0]])\n",
    "np.linalg.norm(Π_0.dot(p), ord=1)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We can repeat the process to get the probability of tails:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-11-19T19:47:58.312414Z",
     "start_time": "2018-11-19T19:47:58.301148Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.2"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "Π_1 = np.array([[0, 0], [0, 1]])\n",
    "np.linalg.norm(Π_1.dot(p), ord=1)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The two projections play an equivalent role to the values 0 and 1 when we defined the probability distribution. In fact, we could define a new random variable called $\\Pi$ that can take the projections $\\Pi_0$ and $\\Pi_1$ as values and we would end up with an identical probability distribution. This may sound convoluted and unnatural, but the measurement in quantum mechanics is essentially a random variable that takes operator values, such as projections."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "What happens when we want to transform a probability distribution to another one? For instance, to change the bias of a coin, or to describe the transition of a Markov chain. Since the probability distribution is also a stochastic vector, we can apply a matrix on the vector, where the matrix has to fulfill certain conditions. A left *stochastic matrix* will map stochastic vectors to stochastic vectors when multiplied from the left: its columns add up to one. In other words, it maps probability distributions to probability distributions. For example, starting with a unbiased coin, the map $M$ will transform the distribution to a biased coin:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-11-19T19:47:58.328764Z",
     "start_time": "2018-11-19T19:47:58.316399Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.9999999999999999"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "p = np.array([[.5], [.5]])\n",
    "M = np.array([[0.7, 0.6], [0.3, 0.4]])\n",
    "np.linalg.norm(M.dot(p), ord=1)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "One last concept that will come handy is entropy. A probability distribution's entropy is defined as $H(p) = - \\sum_i p_i \\log p_i$. Let us plot it over all possible probability distributions of coin tosses:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-11-19T19:47:58.829415Z",
     "start_time": "2018-11-19T19:47:58.337314Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.lines.Line2D at 0x7f7b72f82588>"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "ϵ = 10e-10\n",
    "p_0 = np.linspace(ϵ, 1-ϵ, 100)\n",
    "p_1 = 1-p_0\n",
    "H = -(p_0*np.log(p_0) + p_1*np.log(p_1))\n",
    "fig, ax = plt.subplots()\n",
    "ax.set_xlim(0, 1)\n",
    "ax.set_ylim(0, -np.log(0.5))\n",
    "ax.set_xlabel(\"$p_0$\")\n",
    "ax.set_ylabel(\"$H$\")\n",
    "plt.plot(p_0, H)\n",
    "plt.axvline(x=0.5, color='k', linestyle='--')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Here we can see that the entropy is maximal for the unbiased coin. This is true in general: the entropy peaks for the uniform distribution. In a sense, this is the most unpredictable distribution: if we get heads with probability 0.2, betting tails is a great idea. On the other hand, if the coin is unbiased, then a deterministic strategy is of little help in winning. Entropy quantifies this notion of surprise and unpredictability."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Quantum states\n",
    "\n",
    "A classical coin is a two-level system: it is either heads or tails. At a first look a quantum state is a probability distribution, and the simplest case is a two-level state, which we call a qubit. Just like the way we can write the probability distribution as a column vector, we can write a quantum state as a column vector. For notational convenience that will become apparent later, we write the label of a quantum state in what is called a ket in the Dirac notation. So for instance, for some qubit, we can write \n",
    "\n",
    "$$\n",
    "|\\psi\\rangle = \\begin{bmatrix}\n",
    "    a_0 \\\\\n",
    "    a_1 \\\\\n",
    "\\end{bmatrix}.\n",
    "$$\n",
    "\n",
    "In other words, a ket is just a column vector, exactly like the stochastic vector in the classical case. Instead of putting an arrow over the name of the variable to express that it is a vector, we use the ket to say that it is a column vector that represents a quantum state. There's more to this notation, as we will see.\n",
    "\n",
    "The key difference to classical probability distributions and stochastic vectors is the normalization constraint. The square sum of their absolute values adds up to 1:\n",
    "\n",
    "$$\n",
    "\\sqrt{|a_0|^2+|a_1|^2}=1,\n",
    "$$\n",
    "\n",
    "where $a_0, a_1\\in \\mathbb{C}$. In other words, we are normalizing in the $l_2$ norm instead of the $l_1$ norm. Furthermore, we are no longer restricted to the positive orthant: the components of the quantum state vector, which we call *probability amplitudes*, are complex valued.\n",
    "\n",
    "Let us introduce two special qubits, corresponding to the canonical basis vectors in two dimensions: $|0\\rangle$ and $|1\\rangle$.\n",
    "\n",
    "$$\n",
    "|0\\rangle = \\begin{bmatrix}\n",
    "    1 \\\\\n",
    "    0 \\\\\n",
    "\\end{bmatrix}, \\,\\,\\, |1\\rangle = \\begin{bmatrix}\n",
    "    0 \\\\\n",
    "    1 \\\\\n",
    "\\end{bmatrix}.\n",
    "$$\n",
    "\n",
    "This basis is also called the computational basis in quantum computing.\n",
    "\n",
    "We can expand an arbitrary qubit state in this basis:\n",
    "\n",
    "$$\n",
    "|\\psi\\rangle = \\begin{bmatrix}\n",
    "    a_0 \\\\\n",
    "    a_1 \\\\\n",
    "\\end{bmatrix}=a_0\\begin{bmatrix}\n",
    "    1 \\\\\n",
    "    0 \\\\\n",
    "\\end{bmatrix} + \n",
    "a_1\\begin{bmatrix}\n",
    "    0 \\\\\n",
    "    1 \\\\\n",
    "\\end{bmatrix}=\n",
    "a_0|0\\rangle+a_1|1\\rangle.\n",
    "$$\n",
    "\n",
    "This expansion in a basis is called a superposition. If we sample the qubit state, we obtain the outcome 0 with probability $|a_0|^2$, and 1 with probability $|a_1|^2$. This is known as the Born rule; you will learn more about measurements and this rule in a subsequent notebook.\n",
    "\n",
    "For now, let's take a look at how we can simulate classical coin tossing on a quantum computer. Let's start with a completely biased case where we get heads with probability 1. This means that our qubit $|\\psi\\rangle=|0\\rangle$. We create a circuit of a single qubit and a single classical register where the results of the sampling (measurements) go."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-11-19T19:47:59.562010Z",
     "start_time": "2018-11-19T19:47:58.831645Z"
    }
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/home/pwittek/.anaconda3/envs/qiskit/lib/python3.7/site-packages/marshmallow/schema.py:364: ChangedInMarshmallow3Warning: strict=False is not recommended. In marshmallow 3.0, schemas will always be strict. See https://marshmallow.readthedocs.io/en/latest/upgrading.html#schemas-are-always-strict\n",
      "  ChangedInMarshmallow3Warning\n"
     ]
    }
   ],
   "source": [
    "from qiskit import QuantumCircuit, ClassicalRegister, QuantumRegister\n",
    "from qiskit import execute\n",
    "from qiskit import BasicAer\n",
    "from qiskit.tools.visualization import plot_histogram, plot_bloch_multivector\n",
    "\n",
    "import numpy as np\n",
    "π = np.pi\n",
    "\n",
    "backend = BasicAer.get_backend('qasm_simulator')\n",
    "\n",
    "q = QuantumRegister(1)\n",
    "c = ClassicalRegister(1)\n",
    "circuit = QuantumCircuit(q, c)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Any qubit is initialized in $|0\\rangle$, so if we measure it rightaway, we should get our maximally biased coin."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-11-19T19:47:59.567831Z",
     "start_time": "2018-11-19T19:47:59.563751Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<qiskit.circuit.instructionset.InstructionSet at 0x7f7b72fe09b0>"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "circuit.measure(q, c)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let us execute it a hundred times and study the result"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-11-19T19:47:59.619731Z",
     "start_time": "2018-11-19T19:47:59.569854Z"
    }
   },
   "outputs": [],
   "source": [
    "job = execute(circuit, backend, shots=100)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-11-19T19:47:59.632356Z",
     "start_time": "2018-11-19T19:47:59.623850Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'0': 100}"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "result = job.result()\n",
    "result.get_counts(circuit)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "As expected, all of our outcomes are 0. To understand the possible quantum states, we use the Bloch sphere visualization. Since the probability amplitudes are complex and there are two of them for a single qubit, this would require a four-dimensional space. Now since the vectors are normalized, this removes a degree of freedom, allowing a three-dimensional representation with an appropriate embedding. This embedding is the Bloch sphere. It is slightly different than an ordinary sphere in three dimensions: we identify the north pole with the state $|0\\rangle$, and the south pole with $|1\\rangle$. In other words, two orthogonal vectors appear as if they were on the same axis -- the axis Z. The computational basis is just one basis: the axes X and Y represent two other bases. Any point on the surface of this sphere is a valid quantum state. This is also true the other way around: every pure quantum state is a point on the Bloch sphere. Here it 'pure' is an important technical term and it essentially means that the state is described by a ket (column vector). Later in the course we will see other states called mix states that are not described by a ket (you will see later that these are inside the Bloch sphere).\n",
    "\n",
    "To make it less abstract, let's plot our $|0\\rangle$ on the Bloch sphere:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-11-19T19:48:00.005920Z",
     "start_time": "2018-11-19T19:47:59.635003Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 288x288 with 1 Axes>"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "backend_statevector = BasicAer.get_backend('statevector_simulator')\n",
    "circuit = QuantumCircuit(q, c)\n",
    "circuit.iden(q[0])\n",
    "job = execute(circuit, backend_statevector)\n",
    "plot_bloch_multivector(job.result().get_statevector(circuit))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-11-01T17:22:30.580690Z",
     "start_time": "2018-11-01T17:22:30.567499Z"
    }
   },
   "source": [
    "Compare this sphere with the straight line in the positive orthant that describes all classical probability distributions of coin tosses. You can already see that there is a much richer structure in the quantum probability space.\n",
    "\n",
    "Let us pick another point on the Bloch sphere, that is, another distribution. Let's transform the state $|0\\rangle$ to $\\frac{1}{\\sqrt{2}}(|0\\rangle + |1\\rangle)$. This corresponds to the unbiased coin, since we will get 0 with probability $|\\frac{1}{\\sqrt{2}}|^2=1/2$, and the other way around. There are many ways to do this transformation. We pick a rotation around the Y axis by $\\pi/2$, which corresponds to the matrix $\\frac{1}{\\sqrt{2}}\\begin{bmatrix} 1 & -1\\\\1 & 1\\end{bmatrix}$."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-11-19T19:48:00.139079Z",
     "start_time": "2018-11-19T19:48:00.008309Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 504x360 with 1 Axes>"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "circuit = QuantumCircuit(q, c)\n",
    "circuit.ry(π/2, q[0])\n",
    "circuit.measure(q, c)\n",
    "job = execute(circuit, backend, shots=100)\n",
    "plot_histogram(job.result().get_counts(circuit))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "To get an intuition why it is called a rotation around the Y axis, let's plot it on the Bloch sphere:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-11-19T19:48:00.377553Z",
     "start_time": "2018-11-19T19:48:00.141442Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 288x288 with 1 Axes>"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "circuit = QuantumCircuit(q, c)\n",
    "circuit.ry(π/2, q[0])\n",
    "job = execute(circuit, backend_statevector)\n",
    "plot_bloch_multivector(job.result().get_statevector(circuit))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "It does exactly what it says: it rotates from the north pole of the Bloch sphere.\n",
    "\n",
    "Why is interesting to have complex probability amplitudes instead of non-negative real numbers? To get some insight, take a look what happens if we apply the same rotation to $|1\\rangle$. To achieve this, first we flip $|0\\rangle$ to $|1\\rangle$ by applying a NOT gate (denoted by X in quantum computing) and then the rotation."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-11-19T19:48:00.622667Z",
     "start_time": "2018-11-19T19:48:00.379562Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 288x288 with 1 Axes>"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "circuit = QuantumCircuit(q, c)\n",
    "circuit.x(q[0])\n",
    "circuit.ry(π/2, q[0])\n",
    "job = execute(circuit, backend_statevector)\n",
    "plot_bloch_multivector(job.result().get_statevector(circuit))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "You can verify that the result is $\\frac{1}{\\sqrt{2}}(-|0\\rangle + |1\\rangle)$. That is, the exact same state as before, except that the first term got a minus sign: it is a negative probability amplitude. Note that the difference cannot be observed from the statistics:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-11-19T19:48:00.747978Z",
     "start_time": "2018-11-19T19:48:00.624958Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 504x360 with 1 Axes>"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "circuit.measure(q, c)\n",
    "job = execute(circuit, backend, shots=100)\n",
    "plot_histogram(job.result().get_counts(circuit))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "It still looks like an approximately biased coin. Yet, that negative sign -- or any complex value -- is what models *interference*, a critically important phenomenon where probability amplitudes can interact in a constructive or a destructive way. To see this, if we apply the rotation twice in a row on $|0\\rangle$, we get another deterministic output, $|1\\rangle$, although in between the two, it was some superposition. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-11-19T19:48:00.906121Z",
     "start_time": "2018-11-19T19:48:00.752622Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 504x360 with 1 Axes>"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "circuit = QuantumCircuit(q, c)\n",
    "circuit.ry(π/2, q[0])\n",
    "circuit.ry(π/2, q[0])\n",
    "circuit.measure(q, c)\n",
    "job = execute(circuit, backend, shots=100)\n",
    "plot_histogram(job.result().get_counts(circuit))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Many quantum algorithms exploit interference, for instance, the seminal [Deutsch-Josza algorithm](https://en.wikipedia.org/wiki/Deutsch–Jozsa_algorithm), which is among the simplest to understand its significance."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# More qubits and entanglement\n",
    "\n",
    "We have already seen that quantum states are probability distributions normed to 1 in the $l_2$ norm and we got a first peek at interference. If we introduce more qubits, we see another crucial quantum effect emerging. To do that, we first have to define how we write down the column vector for describing two qubits. We use a tensor product, which, in the case of qubits, is equivalent to the Kronecker product. Given two qubits, $|\\psi\\rangle=\\begin{bmatrix}a_0\\\\a_1\\end{bmatrix}$ and $|\\psi'\\rangle=\\begin{bmatrix}b_0\\\\b_1\\end{bmatrix}$, their product is $|\\psi\\rangle\\otimes|\\psi'\\rangle=\\begin{bmatrix}a_0b_0\\\\ a_0b_1\\\\ a_1b_0\\\\ a_1b_1\\end{bmatrix}$. Imagine that you have two registers $q_0$ and $q_1$, each can hold a qubit, and both qubits are in the state $|0\\rangle$. Then this composite state would be described by according to this product rule as follows:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-11-19T19:48:00.928395Z",
     "start_time": "2018-11-19T19:48:00.913259Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[1],\n",
       "       [0],\n",
       "       [0],\n",
       "       [0]])"
      ]
     },
     "execution_count": 19,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "q0 = np.array([[1], [0]])\n",
    "q1 = np.array([[1], [0]])\n",
    "np.kron(q0, q1)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "This is the $|0\\rangle\\otimes|0\\rangle$ state, which we often abbreviate as $|00\\rangle$. The states $|01\\rangle$, $|10\\rangle$, and $|11\\rangle$ are defined analogously, and the four of them give the canonical basis of the four dimensional complex space, $\\mathbb{C}^2\\otimes\\mathbb{C}^2$.\n",
    "\n",
    "Now comes the interesting and counter-intuitive part. In machine learning, we also work we high-dimensional spaces, but we never construct it as a tensor product: it is typically $\\mathbb{R}^d$ for some dimension $d$. The interesting part of writing the high-dimensional space as a tensor product is that not all vectors in can be written as a product of vectors in the component space.\n",
    "\n",
    "Take the following state: $|\\phi^+\\rangle = \\frac{1}{\\sqrt{2}}(|00\\rangle+|11\\rangle)$. This vector is clearly in $\\mathbb{C}^2\\otimes\\mathbb{C}^2$, since it is a linear combination of two of the basis vector in this space. Yet, it cannot be written as $|\\psi\\rangle\\otimes|\\psi'\\rangle$ for some $|\\psi\\rangle$, $|\\psi'\\rangle\\in\\mathbb{C}^2$.\n",
    "\n",
    "To see this, assume that it can be written in this form. Then\n",
    "\n",
    "$$\n",
    "|\\phi^+\\rangle = \\frac{1}{\\sqrt{2}}(|00\\rangle+|11\\rangle) = \\begin{bmatrix}a_0b_0\\\\ a_0b_1\\\\ a_1b_0\\\\ a_1b_1\\end{bmatrix} = a_0b_0|00\\rangle + a_0b_1|01\\rangle + a_1b_0|10\\rangle + a_1b_1|11\\rangle.\n",
    "$$\n",
    "\n",
    "$|01\\rangle$ and $|10\\rangle$ do not appear on the left-hand side, so their coefficients must be zero: $a_1b_0=0$ and $a_0b_1=0$. This leads to a contradiction, since $a_1$ cannot be zero ($a_1b_1=1$), so $b_0$ must be zero, but $a_0b_0=1$. Therefore $|\\phi^+\\rangle$ cannot be written as a product.\n",
    "\n",
    "States that cannot be written as a product are called entangled states. This is the mathematical form of describing a phenomenon of strong correlations between random variables that exceed what is possible classically. Entanglement plays a central role in countless quantum algorithms. A simple example is [quantum teleportation](https://en.wikipedia.org/wiki/Quantum_teleportation). We will also see its applications in quantum machine learning protocols.\n",
    "\n",
    "We will have a closer look at entanglement in a subsequent notebook on measurements, but as a teaser, let us look at the measurement statistics of the $|\\phi^+\\rangle$ state. The explanation of the circuit preparing it will also come in a subsequent notebook."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-11-19T19:48:01.146195Z",
     "start_time": "2018-11-19T19:48:00.930859Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 504x360 with 1 Axes>"
      ]
     },
     "execution_count": 20,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "q = QuantumRegister(2)\n",
    "c = ClassicalRegister(2)\n",
    "circuit = QuantumCircuit(q, c)\n",
    "circuit.h(q[0])\n",
    "circuit.cx(q[0], q[1])\n",
    "circuit.measure(q, c)\n",
    "job = execute(circuit, backend, shots=100)\n",
    "plot_histogram(job.result().get_counts(circuit))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Notice that 01 or 10 never appear in the measurement statistics."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Further reading\n",
    "\n",
    "Chapter 9 in Quantum Computing since Democritus by Scott Aaronson describes a similar approach to understanding quantum states -- in fact, the interference example was lifted from there."
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.1"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
